This is an early documentation for Terje's FTP Daemon for OS/2 (zftpd). zftpd was "born" during the christmas in 1996 because there are no other good ftp daemons for OS/2 and I wanted to learn to develop TCP/IP applications. The daemon is made text mode only because it should be easy to run and maintain remotely. A program called zftpacct is used to setup directory shares, users and group. zftpacct will let you use most of the functionability of zftpd, but not all. If you want to be able to use every feature in zftpd you have to get a second administrator program. The only one available today is zftpdadm written by Thomas Johnsen.
zftpd comes in a packed file named zftpd###.zip
where the #'s are the version identification. This .zip file contain many files, these are:
file_id.diz
readme.txt
whatsnew.txt
zftpacct.exe
zftpd.cfg
zftpd.exe
zftpd.html
When running zftpacct
some files will be created to store the user, group and share information, these files are listed below and should only be changed with the use of zftpacct
or another administration program. Files are in binary format and can not be edited with a normal editor.
zftpd.usr
zftpd.grp
zftpd.sha
zftpd.mem
The following files will be created when running zftpd
:
zftpduse.log
First you will have to setup at least one user, one group and one share. The user also has to be member of a group.
Do the following:
This will make a user with the name "testusr" and the password "testpwd", and please note what userid it get. Username and password can be up to 32 characters long, both name and password can contain any AscII character including space, however this may not be supported by all ftp clients. If you would like to make a anonymous or guest user that can be done by appending a "-g" somewhere in the commandline. Those users will not require a password and they will instead be asked for their e-mail address, the only checking done by zftpd is if there is a "@" present in the given address.
zftpacct -au testusr testpwd
This will make a group with the name "testgrp", also note the groupid given. Groupname may be up to 32 characters long.
zftpacct -ag testgrp
This will make a share for "x:\path" with full access for both user and group and no access for others. Please note that all the "-"'es have to be present. The numbers at the end are the user and group-id.
zftpacct -as x:/path . rwx--rwx------- 0 0
And finally this will add the user testusr to the group testgrp. One user can be member in as many groups as needed.
zftpacct -am testgrp testusr
Now you should be ready to start the ftpd with the command:
zftpd -s
Usage: zftpd {parameters} -c[users] Max concurrent users (Default = 16) -p[port] Listen to specified port (Default = 21) -s Start daemon
Usage: zftpacct [parameters] -l[u|g|s] List users/groups or shares (u, g or s) -lu [username] List specific user with statistics -au [username] [password] {-g} Add a new user -ag [groupname] Add a new group -as [localpath] [ftppath] [access] Add a share [userid] [groupid] -am [groupname] [username] Add a user to a group -du [userid] Delete a user -dg [groupid] Delete a group -ds [shareid] Delete a share -dm [groupid] [userid] Remove a user from a group -cupc [username] [oldpassword] Change user password if old match [newpassword] Possible accesslevels are: r = read, w = write, x = execute, v = view only, n = no delete.
This command will show you a list of all users and which groups they are member of, if a username is spesified after the parameter only that spesific user is shown, but with all available user information.
This command show you a list of all the groups defined.
Please check the README.TXT
for contact information.